package com.bosssoft.common.config;

import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;

import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;

/**
 * MySwaggerProperties 类用于加载 Swagger 的配置属性。
 * 这些属性通常会从应用程序的配置文件（如 application.properties 或 application.yml）中读取。
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Configuration
public class MySwaggerProperties {

    /**
     * API 文档生成基础路径
     * 从配置文件中读取 swagger.apiBasePackage 的值。
     */
    @Value("${swagger.apiBasePackage}")
    private String apiBasePackage;

    /**
     * 文档标题
     * 从配置文件中读取 swagger.title 的值。
     */
    @Value("${swagger.title}")
    private String title;

    /**
     * 文档描述
     * 从配置文件中读取 swagger.description 的值。
     */
    @Value("${swagger.description}")
    private String description;

    /**
     * 文档版本
     * 从配置文件中读取 swagger.version 的值。
     */
    @Value("${swagger.version}")
    private String version;

    /**
     * 文档联系人姓名
     * 从配置文件中读取 swagger.contactName 的值。
     */
    @Value("${swagger.contactName}")
    private String contactName;

    /**
     * 文档联系人网址
     * 从配置文件中读取 swagger.contactUrl 的值。
     */
    @Value("${swagger.contactUrl}")
    private String contactUrl;

    /**
     * 文档联系人邮箱
     * 从配置文件中读取 swagger.contactEmail 的值。
     */
    @Value("${swagger.contactEmail}")
    private String contactEmail;
}
